Network data storage is typically provided by an array of disk drives integrated with a large semiconductor cache memory—forming a cached disk array. A file server is used to interface the cached disk array to a network. In order to protect data on the file server, a backup procedure is performed at regular intervals, during which the data is copied from the file server to a tape drive via a Network Data Management Protocol (NDMP) service. Although restoration of data from the tape drive to the file server is performed by a restore procedure on an as needed basis, restoration performance is important in order to recover data in a reasonable timeframe, e.g., to maintain system performance, avoid business interruptions, etc.
Conventional NDMP restore technologies read data from a tape drive and restore such data in a file server in a serial manner, i.e., one file at a time. Consequently, such technologies have had some drawbacks with respect to recovering data in an efficient manner, leaving much room for improvement.